For many applications it is valuable to be able to track orientation and position of a camera as it moves in an environment. For example, in robotics, vehicle navigation, computer game applications, medical applications and other problem domains. Previous approaches have involved using color images captured by moving cameras, identifying features in those images such as lines and edges and tracking that information in a sequence of color images captured by the camera to try and estimate relative camera position. Existing approaches are limited in accuracy, robustness and speed. However, for many applications, accurate camera tracking is required in real-time, for example, in order that a robot may successfully move about in its environment.
The embodiments described below are not limited to implementations which solve any or all of the disadvantages of known camera tracking processes.